# -*- coding:utf-8 -*-
#匿名函数
#关键字lambda表示匿名函数，冒号前面的x表示函数参数。
L = list(map(lambda x: x * x,[1,2,3,4,5,6]))
print('L=',L)

#匿名函数赋值给变量f
f = lambda x : x * x
print(f(5))

#匿名函数作为返回值
def build(x,y):
    return lambda: x * x + y * y

ff = build(3,5)
print(ff) #<function <lambda> at 0x0000000003383C88>
print(ff())#34

#用匿名函数改造
def is_odd(n):
    return n % 2 == 1

L = list(filter(is_odd, range(1, 20)))

print(L)

print('---------------------')
LL = list(filter(lambda n:n % 2 ==1,range(1,20)))
print(LL)
